# 循环中的else
# 循环可以和else配合使用，else下方缩进的代码是指：当循环正常结束之后要执行的代码
# 如果是break终止循环的情况，else下方缩进的代码将不会执行！！！
'''
while 条件：
    条件成立，重复执行的代码
else：
    循环正常结束之后要执行的代码



for i in 序列：
    重复执行的代码
else:
    循环正常结束之后要执行的代码s
'''

# 综合案例：猜数游戏

import random  # 导入random模块

# 游戏规则：
print("-" * 50)
print("欢迎来到《猜数游戏》")
print("规则一：系统每次会自动完成一个1-10之间的随机数")
print("规则二：每次游戏最多只能猜三次")
print("规则三：进入游戏或者继续玩，输入：yes或者y")
print("规则四：离开游戏，输入:no或者n")
print("-" * 50)

# 代码：
n = 0
while True:
    order = input('请输入是否开始游戏：')
    if order == 'yes' or order == 'y':  # 用户想继续玩游戏
        n += 1
        print(f'正式开始第{n}次游戏')
        number = random.randint(1, 9)  # 生成一个随机数  randint函数 ：包头也包尾
        # print(number)
        for i in range(1, 4):  # 生成1,2,3 用户最多可以猜三次  range函数 ：包头不包尾
            my_num = int(input('请玩家输入所猜的数字：'))
            if my_num == number:
                print(f'恭喜你，猜中啦！答案就是{my_num}')
                break
            elif my_num > number:
                print(f'你猜的数字太大了，还剩下{3 - i}次')
            else:
                print(f'你猜的数字太小了，还剩下{3 - i}次')
        else: #三次都猜错，for循环结束
            print(f'您三次都猜错了，正确答案是{number}')
    elif order == 'no' or order == 'n':  # 用户不想玩
        print('谢谢！GAME OVER！')
        break
    else:
        print('请输入正确的指令！')
